package com.ruoyi.mateproduction.mapper;

import com.ruoyi.mateproduction.domain.MateProductionRecord;
import com.ruoyi.mateproduction.domain.MateProductionRecordModel;
import com.ruoyi.mateproduction.domain.MateRecordInformation;
import com.ruoyi.mateproduction.domain.MtCourseProduct;
import com.ruoyi.mateproduction.domain.MtCourseProject;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;
import java.util.Map;

/**
 * @Author
 * @Version 1.0
 */
@Mapper
public interface MtRecordMapper {

    public int addMateRecord(MateProductionRecord mateProductionRecord);

    public int addMateRecordModel(MateProductionRecordModel mateProductionRecordModel);

    public int addMateRecordInformation(MateRecordInformation mateRecordInformation);

    public void removeMtRecord(Long mtRecordId);

    public void removeMtRecordModel(Long mtRecordId);

    public void  removeMtRecordInformation(Long mtRecordId);

    public MateProductionRecord selectRecord(Long mtRecordId);

    public int editRecord(MateProductionRecord mateProductionRecord);

    public int editRecordModel(MateProductionRecordModel mateProductionRecordModel);

    public List<MateProductionRecord> recordList(MateProductionRecord mateProductionRecord);

    public List<MateProductionRecord> auditRecord(Long deptId);

    public List<MateProductionRecordModel> mateProductionRecordModels(Long mtRecordId);

    public int addMateRecordTemplate(MateProductionRecord mateProductionRecord);

    public int addMateRecordModelTemplate(MateProductionRecordModel mateProductionRecordModel);

    public int addMateRecordInformationTemplate(MateRecordInformation mateRecordInformation);

    public void removeMtRecordTemplate(Long mtRecordId);

    public void removeMtRecordModelTemplate(Long mtRecordId);

    public void  removeMtRecordInformationTemplate(Long mtRecordId);

    public MateProductionRecord selectMtRecordTemplate(Map<String,Object> resMap);

    public List<MateProductionRecordModel> selectMtRecordModelTemplate(Map<String,Object> resMap);

    public List<MateRecordInformation> selectMtRecordInformationTemplate(Map<String,Object> resMap);

    public MateProductionRecord selectMateProductionRecordLast(Map<String,Object> resMap);

    public List<MateProductionRecordModel> selectRecordModelByRecordId(Long mtRecordId);


}
